home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
MacHack 1997
/
MacHack 1997.toast
/
Hacks
/
Hacks ’96
/
PredatorPrey
/
DoScrap.c
< prev
next >
Wrap
Text File
|
1996-06-22
|
1KB
|
76 lines
/* DoScrap.c */ /* C14 Calculator */
#include <Types.h>
#include <Quickdraw.h>
#include <Controls.h>
#include <Dialogs.h>
#include <Events.h>
/*#include <Lists.h>*/
#include <Menus.h>
#include <TextEdit.h>
#include "DoScrap.h"
#include <Scrap.h>
/* global vars: */
Boolean scrapDirty;
OSType scrapType;
static short scrapCompare;
void DoScrapSeg() {}
#pragma segment DoScrap
/*----------*/
void ReadDeskScrap ()
{
typedef OSType **OSTypeHandle;
register PScrapStuff scrap;
long scrapLength;
long offset;
scrap = InfoScrap ();
if (scrapCompare != scrap->scrapCount) {
if (scrap->scrapHandle == NULL) {
scrapType = '????';
} else {
scrapType = **((OSTypeHandle) scrap->scrapHandle);
}
TESetScrapLen (0);
if (GetScrap (NULL, 'TEXT', &offset) > 0) {
scrapLength = TEFromScrap ();
}
scrapCompare = scrap->scrapCount;
} /*if*/
} /*ReadDeskScrap*/
/*----------*/
void WriteDeskScrap ()
{
OSErr errCode;
PScrapStuff scrapPtr;
if (scrapDirty) {
errCode = ZeroScrap ();
errCode = TEToScrap ();
scrapType = 'TEXT';
scrapDirty = false;
scrapPtr = InfoScrap ();
scrapCompare = scrapPtr->scrapCount;
} /*if*/
} /*WriteDeskScrap*/
/*----------*/
void InitScrap ()
{
PScrapStuff scrapPtr;
scrapDirty = false;
scrapPtr = InfoScrap ();
scrapCompare = scrapPtr->scrapCount + 1;
ReadDeskScrap ();
} /*InitScrap*/